home *** CD-ROM | disk | FTP | other *** search
/ Quick PC 61 / Quick PC 61.iso / I386 / UDDIWEB.MSI / categorization.aspx < prev    next >
Encoding:
Text File  |  2003-02-21  |  10.0 KB  |  275 lines

  1. <!-- ############################################################################ -->
  2. <!-- ## UDDI Services                                                          ## -->
  3. <!-- ## Copyright (c) Microsoft Corporation.  All rights reserved.             ## -->
  4. <!-- ############################################################################ -->
  5.  
  6. <%@ Page Language="c#" Inherits='UDDI.Web.UddiPage' %>
  7. <%@ Register TagPrefix='uddi' Tagname='Header' Src='../controls/header.ascx' %>
  8. <%@ Register Tagprefix='uddi' Tagname='Footer' Src='../controls/footer.ascx' %>
  9. <%@ Register Tagprefix='uddi' Tagname='BreadCrumb' Src='../controls/breadcrumb.ascx' %>
  10. <%@ Register TagPrefix='uddi' Namespace='UDDI.Web' Assembly='uddi.web' %>
  11. <%@ Import Namespace='System.Data' %>
  12. <%@ Import Namespace='System.Data.SqlClient' %>
  13. <%@ Import Namespace='System.Xml.Serialization' %>
  14. <%@ Import Namespace="System.Web" %>
  15. <%@ Import Namespace="System.Web.UI" %>
  16. <%@ Import Namespace='UDDI' %>
  17. <%@ Import Namespace='UDDI.API' %>
  18. <%@ Import Namespace='UDDI.API.ServiceType' %>
  19. <%@ Import Namespace='UDDI.API.Extensions' %>
  20.  
  21. <script language='C#' runat='server'>
  22.     protected bool frames;
  23.     
  24.     protected void Page_Init( object sender, EventArgs e )
  25.     {
  26.         frames = ( "true" == Request[ "frames" ] );        
  27.         
  28.         
  29.         breadcrumb.AddBlurb( Localization.GetString( "HEADING_CATEGORIZATION" ), null, null, null, false );
  30.         breadcrumb.AddBlurb( Localization.GetString( "HEADING_ADMINISTER" ), "../admin/admin.aspx?refreshExplorer=&frames=" + ( frames ? "true" : "false" ), null, null, true );
  31.  
  32.         taxonomyList.Columns[ 1 ].HeaderText = Localization.GetString( "HEADING_TAXONOMY_NAME" );
  33.         taxonomyList.Columns[ 2 ].HeaderText = Localization.GetString( "HEADING_CHECKED" );
  34.         taxonomyList.Columns[ 3 ].HeaderText = Localization.GetString( "HEADING_TAXONOMY_ISBROWSABLE" );
  35.         taxonomyList.Columns[ 4 ].HeaderText = Localization.GetString( "HEADING_ACTIONS" );
  36.             
  37.     }
  38.     
  39.     protected void Page_Load( object sender, EventArgs e )
  40.     {
  41.         if( !Page.IsPostBack )
  42.         {
  43.             switch( Request[ "mode" ] )
  44.             {
  45.                 case "delete":
  46.                     CategorizationScheme taxonomy = new CategorizationScheme();
  47.             
  48.                     taxonomy.TModelKey = Request[ "key" ];        
  49.                     taxonomy.Delete();
  50.                         
  51.                     break;
  52.                 case "toggle":
  53.                     
  54.                     toggleBrowsing( Request[ "key" ] );
  55.                     
  56.                     break;    
  57.                 default:
  58.                     break;
  59.             }    
  60.             DataView view = UDDI.Web.Taxonomy.GetTaxonomies();
  61.     
  62.             taxonomyList.DataSource = view;
  63.             taxonomyList.DataBind();        
  64.         }
  65.         
  66.         if( null!=Request[ "refreshExplorer" ] && frames )
  67.         {
  68.             Response.Write( 
  69.                 ClientScripts.ReloadExplorerPane( "_categorization" )
  70.             );
  71.         }    
  72.     }
  73.  
  74.     protected void Taxonomy_OnCommand( object sender, DataGridCommandEventArgs e )
  75.     {
  76.         //
  77.         // The user has not yet confirmed the operation, so display
  78.         // a confirmation dialog.
  79.         //
  80.         string message=""; 
  81.         string mode ="none";
  82.         int i = ( (string)e.CommandArgument ).IndexOf( ":" );
  83.         string key = "uuid:" +  e.Item.Cells[ 0 ].Text;
  84.         string name =  ((Label)e.Item.Cells[ 1 ].FindControl( "name" )).Text;
  85.         
  86.         //set the messsage to display.
  87.         switch( ((string)e.CommandName).ToLower() )
  88.         {
  89.             case "delete":
  90.                 message=String.Format( Localization.GetString( "TEXT_DELETE_CONFIRMATION" ).Replace( "\"", "\\\"" ), name );
  91.                 mode="delete";
  92.                 Page.RegisterStartupScript(
  93.                     "Confirm",
  94.                     ClientScripts.Confirm(
  95.                         message,
  96.                         "categorization.aspx?key=" + key + "&frames=" + ( frames ? "true" : "false" ) + "&mode="+mode+"&confirm=true",
  97.                         "categorization.aspx?frames=" + ( frames ? "true" : "false" ) ) );                        
  98.                 break;
  99.             case "update":
  100.                 mode="toggle";
  101.                 Response.Redirect( "categorization.aspx?key=" + key + "&frames=" + ( frames ? "true" : "false" ) + "&mode="+mode+"&confirm=true" );
  102.                 break;
  103.         }
  104.         
  105.     }
  106.     
  107.     protected string FlagToString( int flag )
  108.     {
  109.         if( 0!=( flag & 0x0001 ) )
  110.         {
  111.             return Localization.GetString( "HEADING_YES" );
  112.         }
  113.         else
  114.         {
  115.             return Localization.GetString( "HEADING_NO" );
  116.         }
  117.     }
  118.  
  119.     protected bool IsUddiTypesTaxonomy( object tModelKey )
  120.     {
  121.         return 0 == String.Compare( 
  122.             "C1ACF26D-9672-4404-9D70-39B756E62AB4",
  123.             tModelKey.ToString(),
  124.             true );
  125.     }
  126.     private void toggleBrowsing( string TModelKey )
  127.     {
  128.         Taxonomy.SetTaxonomyBrowsable( TModelKey, !Taxonomy.IsValidForBrowsing( TModelKey ) );
  129.     }
  130.     
  131. </script>
  132. <uddi:StyleSheetControl
  133.     Runat='server'
  134.     Default='../stylesheets/uddi.css' 
  135.     Downlevel='../stylesheets/uddidl.css' 
  136.     />
  137. <uddi:PageStyleControl 
  138.     Runat='server'
  139.     OnClientContextMenu='Document_OnContextMenu()'
  140.     Title="TITLE"
  141.     AltTitle="TITLE_ALT"
  142.     />
  143. <uddi:ClientScriptRegister
  144.     Runat='server'
  145.     Source='../client.js'
  146.     Language='javascript'
  147.     />
  148. <uddi:SecurityControl 
  149.     CoordinatorRequired='true'
  150.     Runat='server' 
  151.     />
  152. <form enctype='multipart/form-data' Runat='server'>
  153.  
  154. <table width='100%' border='0' height='100%' cellpadding='0' cellspacing='0'>
  155.         <asp:PlaceHolder
  156.             Id='HeaderBag'
  157.             Runat='server'
  158.             >
  159.             <tr height='95'>
  160.                 <td>
  161.                     <!-- Header Control Here -->
  162.                     <uddi:Header
  163.                         Runat='server' 
  164.                         />
  165.                 </td>
  166.             </tr>
  167.         </asp:PlaceHolder>
  168.         <tr height='100%' valign='top'>
  169.             <td>
  170.                 <uddi:BreadCrumb 
  171.                     Id='breadcrumb' 
  172.                     Runat='server' 
  173.                     />
  174.                 <table cellpadding='10' cellspacing='0' border='0' width='100%'>
  175.                     <tr>
  176.                         <td>
  177.                             <uddi:UddiLabel Text='[[HELP_BLOCK_ADMIN]]' CssClass='helpBlock' Runat='server' /><br>
  178.                             <br>
  179.                             <uddi:TabControl ID='tabs' Runat='server'>
  180.                                 <uddi:TabPage Name='HEADING_CATEGORIZATION' Runat='server'>
  181.                                     <table cellpadding='0' cellspacing='0' border='0' bordercolor='green' width='100%' class='folder'>
  182.                                         <tr>
  183.                                             <td class='normal'>
  184.                                                 <uddi:UddiLabel Text='[[TEXT_TAXONOMY_HOSTED]]' CssClass='tabHelpBlock' Runat='Server' />
  185.                                             </td>
  186.                                             <td align='right' valign='top'>
  187.                                                 <uddi:HelpControl HelpFile='coordinate.context.categorizationschemes' Runat='server'/></td>
  188.                                         </tr>
  189.                                         <tr>
  190.                                             <td class='normal' colspan='2'>
  191.                                                 <br>
  192.                                                 <asp:DataGrid 
  193.                                                     CellPadding='4' 
  194.                                                     CellSpacing='0'
  195.                                                     ID='taxonomyList' 
  196.                                                     GridLines='None' 
  197.                                                     AutoGenerateColumns='false' 
  198.                                                     HeaderStyle-CssClass='tableHeader' 
  199.                                                     ItemStyle-CssClass='tableItem' 
  200.                                                     OnDeleteCommand='Taxonomy_OnCommand'
  201.                                                     OnUpdateCommand='Taxonomy_OnCommand'
  202.                                                     Runat='server'>
  203.                                                     
  204.                                                     <Columns>
  205.                                                         <asp:BoundColumn DataField='tModelKey' Visible='false' />
  206.                                                         <asp:TemplateColumn HeaderStyle-Width='400' HeaderText='Taxonomy Name' HeaderStyle-CssClass='tableHeader' ItemStyle-CssClass='tableItem' FooterStyle-CssClass='tableItem'>
  207.                                                             <ItemTemplate>
  208.                                                                 <asp:Label ID='name' Text='<%# HttpUtility.HtmlEncode( (string)((DataRowView)Container.DataItem)[ "description" ] ) %>' CssClass='rowItem' Runat='Server' />
  209.                                                             </ItemTemplate>
  210.                                                         </asp:TemplateColumn>
  211.                                                         <asp:TemplateColumn HeaderStyle-Width='75' HeaderText='Checked' HeaderStyle-CssClass='tableHeader' ItemStyle-CssClass='tableItem' FooterStyle-CssClass='tableItem'>
  212.                                                             <ItemTemplate>
  213.                                                                 <asp:Label Text='<%# FlagToString( (int)((DataRowView)Container.DataItem)[ "flag" ] ) %>' CssClass='rowItem' Runat='Server' />
  214.                                                             </ItemTemplate>
  215.                                                         </asp:TemplateColumn>
  216.                                                         <asp:TemplateColumn HeaderStyle-Width='75' HeaderText='Available for Browsing' HeaderStyle-CssClass='tableHeader' ItemStyle-CssClass='tableItem' FooterStyle-CssClass='tableItem'>
  217.                                                             <ItemTemplate>
  218.                                                                 <uddi:UddiLabel 
  219.                                                                         Text='<%# ( ( Taxonomy.IsValidForBrowsing( "UUID:"+( ( (DataRowView)Container.DataItem )[ "tModelKey" ]).ToString() ) ) 
  220.                                                                                     ? Localization.GetString( "HEADING_YES" ) : Localization.GetString( "HEADING_NO" ) )%>' 
  221.                                                                         CssClass='button' 
  222.                                                                         Width='60px' 
  223.                                                                         Runat='Server' /> 
  224.                                                             </ItemTemplate>
  225.                                                         </asp:TemplateColumn>                                        
  226.                                                         <asp:TemplateColumn HeaderStyle-Width='125' HeaderText='Actions' HeaderStyle-CssClass='tableHeader' ItemStyle-CssClass='tableItem' FooterStyle-CssClass='tableItem'>
  227.                                                             <ItemTemplate>
  228.                                                                 <nobr><uddi:UddiButton 
  229.                                                                         CommandName='Update'
  230.                                                                         CommandArguments='<%# ( ( (DataRowView)Container.DataItem )[ "tModelKey" ] ).ToString()  + ":" + ( (string)((DataRowView)Container.DataItem)[ "description" ] )%>'
  231.                                                                         Text='<%# ( ( Taxonomy.IsValidForBrowsing( "UUID:"+( ( (DataRowView)Container.DataItem )[ "tModelKey" ]).ToString() ) ) 
  232.                                                                                     ? Localization.GetString( "BUTTON_HIDE" ) : Localization.GetString( "BUTTON_SHOW" ) )%>' 
  233.                                                                         CssClass='button' 
  234.                                                                         Width='60px' 
  235.                                                                         Runat='Server' />                                                            
  236.                                                                 <uddi:UddiButton 
  237.                                                                     CommandName='Delete' 
  238.                                                                     
  239.                                                                     Text='[[BUTTON_DELETE]]' 
  240.                                                                     Enabled='<%# !IsUddiTypesTaxonomy( ((DataRowView)Container.DataItem)[ "tModelKey" ] ) %>' 
  241.                                                                     Width='60px' 
  242.                                                                     CssClass='button' 
  243.                                                                     Runat='server' 
  244.                                                                     CommandArguments='<%# ( ( (DataRowView)Container.DataItem )[ "tModelKey" ].ToString() )  + ":"+ ( (string)((DataRowView)Container.DataItem)[ "description" ] )%>'
  245.                                                                     /></nobr>
  246.                                                             </ItemTemplate>
  247.                                                         </asp:TemplateColumn>
  248.                                                     </Columns>
  249.                                                 </asp:DataGrid>
  250.                                             </td>
  251.                                         </tr>
  252.                                     </table>                        
  253.                                 </uddi:TabPage>
  254.                             </uddi:TabControl>
  255.                         </td>
  256.                     </tr>
  257.                 </table>
  258.             </td>
  259.         </tr>
  260.         <asp:PlaceHolder 
  261.             Id='FooterBag'
  262.             Runat='server'
  263.             >
  264.             <tr height='95'>
  265.                 <td>
  266.                     <!-- Footer Control Here -->
  267.                     <uddi:Footer
  268.                         Runat='server' 
  269.                         />
  270.                 </td>
  271.             </tr>
  272.         </asp:PlaceHolder>
  273.     </table> 
  274. </form>
  275.